
macro package std.unittest.testmacro
import std.ast.*
import std.collection.*

import std.ast.BinaryExpr
import std.ast.Tokens
import std.ast.Token
import std.ast.Expr
import std.ast.TokenKind
import std.ast.ASTException
import std.collection.ArrayList
import std.collection.concurrent.ConcurrentHashMap
import std.sync.AtomicUInt64
import std.unittest.common.shieldEscapeSeq
import std.unicode.*
import std.collection.map

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IllegalMemoryException
* @throws MacroException
*/
public macro Expect(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IllegalMemoryException
* @throws MacroException
*/
public macro Assert(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws MacroException
*/
public macro Expect(assertion: Tokens, body: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws MacroException
*/
public macro Assert(assertion: Tokens, body: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro CustomAssertion(body: Tokens)











/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Bench(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalSynchronizationStateException
* @throws MacroException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IllegalMemoryException
*/
public macro Bench(attr: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Configure(args: Tokens, input: Tokens)






/**
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro Fail(message: Tokens): Tokens

/**
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro FailExpect(message: Tokens): Tokens








/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro BeforeAll(input: Tokens)

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro AfterAll(input: Tokens)

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro BeforeEach(input: Tokens)

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro AfterEach(input: Tokens)















/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Measure(attr: Tokens, input: Tokens): Tokens



/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Parallel(input: Tokens): Tokens



/**
* @throws ConcurrentModificationException
* @throws ASTException
* @throws ParseASTException
* @throws Error
* @throws IllegalMemoryException
* @throws Exception
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws MacroException
*/
public macro PowerAssert(input: Tokens): Tokens

















/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Skip(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Skip(attr: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws IllegalMemoryException
* @throws Error
* @throws Exception
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws MacroException
*/
public macro Strategy(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws IllegalMemoryException
* @throws Error
* @throws Exception
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws MacroException
*/
public macro Strategy(attr: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Tag(tags: Tokens, input: Tokens): Tokens



/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro TestBuilder(input: Tokens): Tokens



/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro TestCase(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro TestCase(args: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Test(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Test(dsl: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro TestTemplate(input: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro TestTemplate(dsl: Tokens, input: Tokens): Tokens





/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws MacroException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
*/
public macro AssertThrows(body: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro AssertThrows(exceptions: Tokens, body: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws MacroException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
*/
public macro ExpectThrows(body: Tokens): Tokens

/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws Exception
* @throws IllegalMemoryException
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro ExpectThrows(exceptions: Tokens, body: Tokens): Tokens









/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Timeout(attrs: Tokens, input: Tokens): Tokens



/**
* @throws ConcurrentModificationException
* @throws ParseASTException
* @throws ASTException
* @throws OutOfMemoryError
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IndexOutOfBoundsException
* @throws IllegalArgumentException
* @throws IllegalSynchronizationStateException
* @throws MacroException
*/
public macro Types(dsl: Tokens, input: Tokens)



/**
* @throws OutOfMemoryError
* @throws ConcurrentModificationException
* @throws ASTException
* @throws ParseASTException
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro UnittestOption(_: Tokens): Tokens

/**
* @throws OutOfMemoryError
* @throws ConcurrentModificationException
* @throws ASTException
* @throws ParseASTException
* @throws IllegalMemoryException
* @throws Exception
* @throws Error
* @throws NoneValueException
* @throws IllegalArgumentException
* @throws IndexOutOfBoundsException
* @throws MacroException
*/
public macro UnittestOption(types: Tokens, params: Tokens): Tokens









